package com.ruoyi.ncpsy.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 作物事件记录对象 ncpsy_crop_event
 * 
 * @author ruoyi
 * @date 2025-08-29
 */
public class NcpsyCropEvent extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long cropEventId;

    /** 作物ID */
    @Excel(name = "作物ID")
    private Long cropId;

    /** 用户ID */
    private long userId;

    /** 事件总述 */
    @Excel(name = "事件总述")
    private String eventSummary;

    /** 交易哈希 */
    @Excel(name = "交易哈希")
    private String hash;

    /** 事件起始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "事件起始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date eventStartTime;

    /** 事件结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "事件结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date eventEndTime;

    /** 总状态 */
    @Excel(name = "总状态")
    private String overallStatus;

    public void setCropEventId(Long cropEventId) 
    {
        this.cropEventId = cropEventId;
    }

    public Long getCropEventId() 
    {
        return cropEventId;
    }

    public void setCropId(Long cropId) 
    {
        this.cropId = cropId;
    }

    public Long getCropId() 
    {
        return cropId;
    }

    public void setEventSummary(String eventSummary) 
    {
        this.eventSummary = eventSummary;
    }

    public String getEventSummary() 
    {
        return eventSummary;
    }

    public void setHash(String hash) 
    {
        this.hash = hash;
    }

    public String getHash() 
    {
        return hash;
    }

    public void setEventStartTime(Date eventStartTime) 
    {
        this.eventStartTime = eventStartTime;
    }

    public Date getEventStartTime() 
    {
        return eventStartTime;
    }

    public void setEventEndTime(Date eventEndTime) 
    {
        this.eventEndTime = eventEndTime;
    }

    public Date getEventEndTime() 
    {
        return eventEndTime;
    }

    public void setOverallStatus(String overallStatus) 
    {
        this.overallStatus = overallStatus;
    }

    public String getOverallStatus() 
    {
        return overallStatus;
    }

    @Override
    public String toString() {
        return "NcpsyCropEvent{" +
                "cropEventId=" + cropEventId +
                ", cropId=" + cropId +
                ", userId='" + userId + '\'' +
                ", eventSummary='" + eventSummary + '\'' +
                ", hash='" + hash + '\'' +
                ", eventStartTime=" + eventStartTime +
                ", eventEndTime=" + eventEndTime +
                ", overallStatus='" + overallStatus + '\'' +
                '}';
    }

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        this.userId = userId;
    }

}
